package loja.fornecedores.teste;


import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertSame;
import static org.junit.Assert.assertTrue;

import java.util.LinkedList;

import org.junit.After;
import org.junit.AfterClass;
import org.junit.Before;
import org.junit.BeforeClass;
import org.junit.Test;

import loja.Produto;
import loja.fornecedores.Fornecedor;
import loja.fornecedores.Ordem_compra;

import loja.stock.Stock;

public class Ordem_compraTest {
 
	private static Ordem_compra oc1;
	private static Ordem_compra oc2;
	private static LinkedList<Stock> lista_stock1;
	private static LinkedList<Produto> gama_produtos1= new LinkedList<Produto>();
	private static LinkedList<Produto> gama_produtos2= new LinkedList<Produto>();
	private static Fornecedor f1= new Fornecedor(1, "Vitor", 35454543, "blablabla","fdgfsg","fgsgfsr",gama_produtos1);;
	private static LinkedList<Stock> lista_stock2;
	private static Fornecedor f2= new Fornecedor(2, "Susana", 4543543, "blablabla","dfdgs","fgsgfsr",gama_produtos2);
	
	@BeforeClass
	public static void setUpBeforeClass() throws Exception {
		oc1 = new Ordem_compra(lista_stock1, f1, "blablabla");
		oc1 = new Ordem_compra(lista_stock2, f2,"dfdgs");
	}
	

	@AfterClass
	public static void tearDownAfterClass() throws Exception {
		System.out.print("END OF TEST");
	}
	
	@Before
	public void setUp() throws Exception {
		System.out.println("setUp()");
	}

	@After
	public void tearDown() throws Exception {
		System.out.println("tearDown()");
	}
	
	
	@Test
	public final void testOrdemCompra() {
		assertNotNull(oc1);
		Ordem_compra oc3 = oc1;
		assertSame(oc1, oc3);
	}
	
	@Test
	public final void testGetData_encomenda() {
		assertTrue(oc1.getData_encomenda()==oc2.getData_encomenda());
	}

	@Test
	public final void testGetProdutos() {
		assertFalse(oc1.getProdutos()==oc2.getProdutos());
		
	}
	
	

	@Test
	public final void testGetComentario() {
		assertFalse(oc1.getComentario() == "blablabla");
		assertFalse(oc1.getComentario().charAt(0) == oc2.getComentario().charAt(0));
		
	}
	

	@Test
	public final void testGetFornecedor() {
		assertFalse(oc1.getFornecedor()==oc2.getFornecedor());
		
	}
	
	

	@Test
	public final void testGetEstado() {

		
	}
	
	
}
